﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NexTrackDesktop.NexTrack
{
    /// <summary>
    /// This method holds all party settings info.
    /// </summary>
    public class Settings
    {
        private MainServiceAdapter serviceAdapter;

        public enum Privacy
        {
            INVITE_ONLY,
            FACEBOOK_FRIENDS,
            ANYONE,
        };

        public Privacy privacy { get; set; }
        public bool allowJoinRequests { get; set; }
        public int numVotes { get; set; }
        public int voteReplen { get; set; }

        /// <summary>
        /// This method creates a new instance of Settings with default values.
        /// </summary>
        public Settings()
        {
            privacy = Privacy.ANYONE;
            allowJoinRequests = true;
            numVotes = 10;
            voteReplen = 2;
        }

        /// <summary>
        /// This method creates a Settings with the specified values.
        /// </summary>
        /// <param name="privacy">Privacy enum</param>
        /// <param name="allowJoin">Allow Join Requests ?</param>
        /// <param name="votes">Number of votes per Guest</param>
        /// <param name="replen">Vote Replenishment ammount</param>
        public Settings(Privacy privacy, bool allowJoin, int votes, int replen)
        {
            this.privacy = privacy;
            allowJoinRequests = allowJoin;
            numVotes = votes;
            voteReplen = replen;
        }

        public Settings(MainServiceAdapter serviceAdapter)
        {
            // TODO: Complete member initialization
            this.serviceAdapter = serviceAdapter;
        }
    }
}
